package usbcali.edu.persistencia.dto;

import usbcali.edu.persistencia.Funcionarios;

import usbcali.edu.presentation.backEndBeans.FuncionariosView;

import java.io.Serializable;
import java.math.BigDecimal;

import java.util.Date;

import javax.faces.event.ActionEvent;


/**
*
*
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public class FuncionariosDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    private String email;
    private String estado;
    private String nombre;
    private String codCargo_Cargos;
    private String codSubarea_SubArea;
    private String codSecciones_SubArea;
    private String codDepat_SubArea;
    private String codEntidad_SubArea;
    private String cedula;
    private Date fechaRegistro;
    private Date fechaRetiro;
    private boolean rowSelected = false;
    private FuncionariosView funcionariosView;
    private Funcionarios funcionarios;

    public Funcionarios getFuncionarios() {
        return funcionarios;
    }

    public String listener_update(ActionEvent e) {
        try {
            funcionariosView.action_modifyWitDTO(((cedula == null) ||
                cedula.equals("")) ? null : new Long(cedula),
                ((email == null) || email.equals("")) ? null : new String(email),
                ((estado == null) || estado.equals("")) ? null
                                                        : new String(estado),
                ((fechaRegistro == null) || fechaRegistro.equals("")) ? null
                                                                      : fechaRegistro,
                ((fechaRetiro == null) || fechaRetiro.equals("")) ? null
                                                                  : fechaRetiro,
                ((codCargo_Cargos == null) || codCargo_Cargos.equals(""))
                ? null : new BigDecimal(codCargo_Cargos),
                ((codSubarea_SubArea == null) || codSubarea_SubArea.equals(""))
                ? null : new String(codSubarea_SubArea),
                		 ((nombre == null) || nombre.equals("")) ? null
                                 : new String(nombre),		
                ((codSecciones_SubArea == null) ||
                codSecciones_SubArea.equals("")) ? null
                                                 : new String(
                    codSecciones_SubArea),
                ((codDepat_SubArea == null) || codDepat_SubArea.equals(""))
                ? null : new String(codDepat_SubArea),
                ((codEntidad_SubArea == null) || codEntidad_SubArea.equals(""))
                ? null : new String(codEntidad_SubArea));
            rowSelected = !rowSelected;
        } catch (Exception ex) {
            return "";
        }

        return "";
    }

    public void listener_cancel(ActionEvent e) {
        cedula = funcionarios.getCedula().toString();
        email = (funcionarios.getEmail() != null)
            ? funcionarios.getEmail().toString() : null;
        estado = (funcionarios.getEstado() != null)
            ? funcionarios.getEstado().toString() : null;
        fechaRegistro = funcionarios.getFechaRegistro();
        fechaRetiro = funcionarios.getFechaRetiro();
        codCargo_Cargos = (funcionarios.getCargos().getCodCargo() != null)
            ? funcionarios.getCargos().getCodCargo().toString() : null;
        codSubarea_SubArea = (funcionarios.getSubArea().getId().getCodSubarea() != null)
            ? funcionarios.getSubArea().getId().getCodSubarea().toString() : null;
        codSecciones_SubArea = (funcionarios.getSubArea().getId().getCodSecciones() != null)
            ? funcionarios.getSubArea().getId().getCodSecciones().toString() : null;
        codDepat_SubArea = (funcionarios.getSubArea().getId().getCodDepat() != null)
            ? funcionarios.getSubArea().getId().getCodDepat().toString() : null;
        codEntidad_SubArea = (funcionarios.getSubArea().getId().getCodEntidad() != null)
            ? funcionarios.getSubArea().getId().getCodEntidad().toString() : null;
        rowSelected = !rowSelected;
    }

    /**
    * <p>Bound to commandLink actionListener in the ui that renders/unrenders
        * the Customer details for editing.</p>
        */
    public void toggleSelected(ActionEvent e) {
        cedula = funcionarios.getCedula().toString();
        email = (funcionarios.getEmail() != null)
            ? funcionarios.getEmail().toString() : null;
        estado = (funcionarios.getEstado() != null)
            ? funcionarios.getEstado().toString() : null;
        fechaRegistro = funcionarios.getFechaRegistro();
        fechaRetiro = funcionarios.getFechaRetiro();
        codCargo_Cargos = (funcionarios.getCargos().getCodCargo() != null)
            ? funcionarios.getCargos().getCodCargo().toString() : null;
        codSubarea_SubArea = (funcionarios.getSubArea().getId().getCodSubarea() != null)
            ? funcionarios.getSubArea().getId().getCodSubarea().toString() : null;
        codSecciones_SubArea = (funcionarios.getSubArea().getId().getCodSecciones() != null)
            ? funcionarios.getSubArea().getId().getCodSecciones().toString() : null;
        codDepat_SubArea = (funcionarios.getSubArea().getId().getCodDepat() != null)
            ? funcionarios.getSubArea().getId().getCodDepat().toString() : null;
        codEntidad_SubArea = (funcionarios.getSubArea().getId().getCodEntidad() != null)
            ? funcionarios.getSubArea().getId().getCodEntidad().toString() : null;
        rowSelected = !rowSelected;
    }

    public void setFuncionarios(Funcionarios funcionarios) {
        this.funcionarios = funcionarios;
    }

    public FuncionariosView getFuncionariosView() {
        return funcionariosView;
    }

    public void setFuncionariosView(FuncionariosView funcionariosView) {
        this.funcionariosView = funcionariosView;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getEstado() {
        return estado;
    }

    public void setEstado(String estado) {
        this.estado = estado;
    }

    public String getCodCargo_Cargos() {
        return codCargo_Cargos;
    }

    public void setCodCargo_Cargos(String codCargo_Cargos) {
        this.codCargo_Cargos = codCargo_Cargos;
    }

    public String getCodSubarea_SubArea() {
        return codSubarea_SubArea;
    }

    public void setCodSubarea_SubArea(String codSubarea_SubArea) {
        this.codSubarea_SubArea = codSubarea_SubArea;
    }

    public String getCodSecciones_SubArea() {
        return codSecciones_SubArea;
    }

    public void setCodSecciones_SubArea(String codSecciones_SubArea) {
        this.codSecciones_SubArea = codSecciones_SubArea;
    }

    public String getCodDepat_SubArea() {
        return codDepat_SubArea;
    }

    public void setCodDepat_SubArea(String codDepat_SubArea) {
        this.codDepat_SubArea = codDepat_SubArea;
    }

    public String getCodEntidad_SubArea() {
        return codEntidad_SubArea;
    }

    public void setCodEntidad_SubArea(String codEntidad_SubArea) {
        this.codEntidad_SubArea = codEntidad_SubArea;
    }

    public Date getFechaRegistro() {
        return fechaRegistro;
    }

    public void setFechaRegistro(Date fechaRegistro) {
        this.fechaRegistro = fechaRegistro;
    }

    public Date getFechaRetiro() {
        return fechaRetiro;
    }

    public void setFechaRetiro(Date fechaRetiro) {
        this.fechaRetiro = fechaRetiro;
    }

    public String getCedula() {
        return cedula;
    }

    public void setCedula(String cedula) {
        this.cedula = cedula;
    }

    public boolean isRowSelected() {
        return rowSelected;
    }

    public void setRowSelected(boolean rowSelected) {
        this.rowSelected = rowSelected;
    }
}
